#include <iostream>
using std::cout;
using std::endl;
//函数的声明和定义分开，但是依然在一个文件中
template <class T>
T add(T t1, T t2);
void test(){
    cout << add(1, 2) << endl;
}

template <class T>
T add(T t1, T t2){
    return t1 + t2;
}

int main()
{
    test();
    return 0;
}

